/**
 * 抽象工厂模式
 * <p>
 *     当产品等级、产品族变得复杂时，需要使用【抽象工厂模式】
 * </p>
 * <p>
 *     1、商品1，商品2，...，商品N（接口）    <br/>
 *     2、抽象工厂（抽象）    <br/>
 *     3、商品1，商品2，...，商品N（实现）    <br/>
 *     4、具体商品工厂
 * </p>
 */
package com.soulless.pattern3;